package com.aplana.ccsd.service;

import info.magnolia.module.blossom.dialog.TabBuilder;

import java.util.List;

import javax.jcr.Node;
import javax.jcr.RepositoryException;

import com.aplana.ccsd.model.Article;
import com.aplana.ccsd.model.ArticleHeader;
import com.aplana.ccsd.model.RecentArticles;


public interface ArticleService {
	
	/**
	 * Заголовок статьи для указанной страницы 
	 */
	ArticleHeader getArticleHeader(Node articlePage);
	
	/**
	 * Найти все статьи хранящиеся в указанной узле-странице 
	 */
	List<Article> findArticles(Node articlesParentPage) throws RepositoryException;
	
	void addArticleListDialogControls(TabBuilder tabBuilder);
	void addRecentArticlesOverviewDialogControls(TabBuilder tabBuilder);
	
	Node getArticleListPage(Node articlesComponent) throws RepositoryException;
	
	RecentArticles getRecentArticles(Node recentArticlesComponent) throws RepositoryException;
	
}
